{% extends "layout" %}

{% block main %}
<h2>Fonctionnalités</h2>
<p>Webappkit est actuellement en phase <strong>alpha</strong>,
seule une partie des fonctionnalités prévues sont implémentées.
Le système de paquets est utilisable pour vos applications mais l'administration est encore incomplète.</p>
<p>Certaines fonctionnalités sont <span class="done">disponibles</span>, d'autres sont <span class="onwork">en cours de développement</span>, ou simplement <span class="todo">prévues</a>.</p>

<h3>Système de paquets (<em>Kits</em>)</h3>
<dl class="roadmap">
<dt class="done">Gestion des dépendances</dt>
<dd>Lorsque vous importez un kit ayant des dépendances, celles-ci sont automatiquement incluses.</dd>

<dt class="done">Adaptation à la version de PHP</dt>
<dd>Les kits peuvent contenir des fichiers pour plusieurs versions de PHP, seuls ceux de la version courante seront inclus.</dd>
<dd>Webappkit lui-même offre des versions PHP4 et PHP5 de ses librairies.</dd>

<dt class="done">Modèle objet extensible</dt>
<dd>Chaque Kit est accessible en tant qu'instance objet, dont la classe peut être personnalisée.</dd>
<dd>Un mécanisme dédié (<em>Tools</em>) permet d'ajouter simplement à un kit des fonctionnalités importées d'un autre Kit.</dd>

<dt class="done">Organisation des paquets</dt>
<dd>Un kit peut lui-même contenir d'autres kits, optionnels ou non.
Il est possible de charger directement un sous-kit.</dd>

<dt class="done">Chargement juste à temps</dt>
<dd>Utilisation des mécanismes avancés de PHP5 pour ne charger que ce qui est vraiment utilisé.</dd>

<dt class="todo">Versionnement des kits</dt>
<dd>Prise en charge de la version des kits pour les dependances.</dd>
</dl>

<h3>Administration des kits</h3>
<dl class="roadmap">
<dt class="done">Liste et détails des kits installés</dt>
<dd>Parcourez l'ensemble des kits installés et les informations disponibles via
une interface web privative (authentification http)</dd>

<dt class="done">Multilingue</dt>
<dd>Actuellement disponible en anglais et en français.</dd>

<dt class="done">Tests unitaires</dt>
<dd>Ajoutez simplement des tests unitaires à vos kits et consultez le résultat sur leur page de détail. Inclut et supporte <a href="http://simpletest.org">SimpleTest</a>.</dd>

<dt class="done">Tutoriels</dt>
<dd>Pages d'aide accessibles directement dans l'administration.</dd>

<dt class="done">Diagnostics</dt>
<dd>Analyse des dysfonctionnement des kits pour l'aide à la construction.</dd>

<dt class="onwork">Gestion en ligne</dt>
<dd>Installation, mise à jour, configuration et export des kits via l'interface d'administration.</dd>

<dt class="todo">Inclusion de documentation</dt>
<dd>Support de <a href="http://docutils.sourceforge.net/sandbox/wilk/french/quickstart-fr.html">Restructured Text</a> pour l'inclusion de pages de manuel au sein des kits, et consultation depuis l'administration</dd>

<dt class="todo">Autodocumentation</dt>
<dd>Support du format <a href="http://www.phpdoc.org/">phpdoc</a> pour la génération automatique de la documentation du code source des librairies des kits.</dd>

<!--<dt>Code source</dt>-->

</dl>

<h3>Kits inclus</h3>

<dl class="roadmap">
<dt class="done">dj.tpl</dt>
<dd>Une implémentation partielle du moteur de gabarits de <a href="http://www.django-fr.org/">Django</a>.
Facilement extensible.</dd>

<!--<dt class="done">databeans</dt>
<dd>-->
<dt class="done">webappkit.httprealm</dt>
<dd>Contrôle d'accès par authentification http.</dd>

<dt class="done">webappkit.simpletest.mysql</dt>
<dd>Pour les tests unitaires impliquant des accès MySQL.</dd>

<dt class="onwork">webappkit.engine</dt>
<dd>Un mini framework pour vos kits applicatifs.</dd>

<dt class="onwork">webappkit.db</dt>
<dd>Quelques outils pour la manipulation des bases de données.</dd>

<dt class="onwork">webappkit.fs</dt>
<dd>Librairies de manipulation du systeme de fichiers.</dd>

<dt class="todo">blog, cms, forum, galerie</dt>
<dd>Quelques applications basiques pour construire rapidement un site en kits</dd>

</dl>
{% endblock %}
